package behavioralpattern.statepattern;
/**
 * 邢帅教育
 * <p>
 * 本源代码由数据中心及其作者共同所有，未经版权持有者的事先书面授权，
 * 不得使用、复制、修改、合并、发布、分发和/或销售本源代码的副本。
 *
 * @copyright Copyright (c) 2018. xsteach.com all rights reserved.
 */

import behavioralpattern.statepattern.state.State;

import java.util.Objects;

/**
 * @author maikec
 * @date 2018/9/16
 */
public class Context {
    /**
     * 改变状态
     * @param state 状态类
     */
   public void changeState(State state) {
       if (Objects.isNull( state )) {
           throw new NullPointerException( "state is not initial" );
       }
       state.handle();
   }

}
